#pragma once

#include "includeBase.h"

#include "../core/AppContext.h"

#include "./PropertyProvider.h"

class PropertyPaneWidget : public QWidget
{
protected:
    Q_OBJECT

public:
    PropertyPaneWidget(QWidget* parent);

public: // methods
    void setCurrent(shared_ptr<PropertyProvider> provider);

private: // methods
    void setupUi();
    void setupMain();
    void setupToolbar();
    void setupBrowser();
    void setupAppSignals();

private slots:
    void onProjectLoaded();

private: // Fields
    QGridLayout* layoutMain;
};
